﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using CMISLibrary.Libraries;
using CMISLibrary;
using System.Data;
using System.Threading;
using BaocaoNPC.Usercontrols.reports;
using BaocaoNPC.common;
using Microsoft.Windows.Controls;
using bus_TienichNPC;
using BCNPCEntities;


namespace CMIS2.BaocaoNPC.Usercontrols
{
    /// <summary>
    /// Interaction logic for THONGTIN_KHANG_SMS.xaml
    /// </summary>
    public partial class THONGTIN_KHANG_SMS : UserControl
    {
        #region Khai báo biến

        public String strMa_dviqly = NPCUS_DanhMuc.Pglobal.strMa_dviqly != "" && NPCUS_DanhMuc.Pglobal.strMa_dviqly != null ? NPCUS_DanhMuc.Pglobal.strMa_dviqly : "PA";
        public String strTenDNHap = NPCUS_DanhMuc.Pglobal.strTen_dangnhap != "" && NPCUS_DanhMuc.Pglobal.strTen_dangnhap != null ? NPCUS_DanhMuc.Pglobal.strTen_dangnhap : "PA";
        public String strTen_dviqly = NPCUS_DanhMuc.Pglobal.strTen_dviqly != "" && NPCUS_DanhMuc.Pglobal.strTen_dviqly != null ? NPCUS_DanhMuc.Pglobal.strTen_dviqly : "cty..";
        public String strTen_dviqly_CT = NPCUS_DanhMuc.Pglobal.strTen_dviqly_CT != "" && NPCUS_DanhMuc.Pglobal.strTen_dviqly_CT != null ? NPCUS_DanhMuc.Pglobal.strTen_dviqly_CT : "cap tren";

        string strMasogcs = "";
        string strMatram = "";
        string strErr = "";
        string strMA_KHANG = "";
        string strMA_DDO = "";
        string strDienthoai = "";
        string strEmail = "";
        string strDuongPho = "";

        Int32 IDVitriDDO = 0;
        Int64 id_vitri_ddo = 0;

        bool checkchungDiachi = false;
        bool checkData = false;

        DataSet dsAll = new DataSet();
        DataTable dtDDO = new DataTable();
        DataTable dtVITRI = new DataTable();
        DataTable dtKHANG = new DataTable();

        DataSet DsTableInsert = new BCNPCEntities.EXCEL.DstableExcel();
        DataSet DsTableDelete = new BCNPCEntities.EXCEL.dstableDelete();

        cls_TienichNPC_bus cls = new cls_TienichNPC_bus();
        cls_THONGTIN_KHANG clsTTKHANG = new cls_THONGTIN_KHANG();

        #endregion

        public THONGTIN_KHANG_SMS()
        {
            InitializeComponent();
            //Component.TabIndexManager.RegisterTabManager(this);

            rdbSogcs.IsChecked = true;
            //ckbDiachiKH.Checked = false;
            //txtDiachiKH.IsEnabled = false;
            checkchungDiachi = false;
            rdbTram.Visibility = Visibility.Hidden;
        }


        private void Count()
        {
            int i = 0;
            int tong = 0;
            try
            {
                DataView dv = dgrDSach_KHang.ItemsSource as DataView;
                DataRow[] drselect = dv.Table.Select("CHON is not null");
                foreach (DataRow dr in drselect)
                {
                    tong = tong + 1;
                    string t = dr["CHON"].ToString();
                    if (dr["CHON"].ToString() == "True")
                    {
                        i = i + 1;
                    }
                }

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }

            lblResult.Content = "Tổng số khách hàng: " + tong.ToString();

        }

        private string ChangeFormatDate(string nguon)
        {
            string[] Arr = nguon.Split('/');

            string day = Arr[0];

            string month = Arr[1];

            string year = Arr[2];


            string MonthDayYear = month + "/" + day + "/" + year;

            return MonthDayYear;
        }

        private void dtpNgayHLUC_KeyDown(object sender, KeyEventArgs e)
        {

        }

        private void btnLayDuLieu_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                this.Cursor = Cursors.Wait;

                btnGhi.IsEnabled = false;
                dtDDO.Clear();
                dtKHANG.Clear();
                dtVITRI.Clear();

                if (rdbSogcs.IsChecked == true)
                {
                    strMasogcs = txtMasogcs.Text.Trim().ToString();
                    dsAll = GlobalServices.Service_NPCUS.Get_THONGTIN_KHANG_sogcs_SMS(strMa_dviqly, strMasogcs, ref strErr);
                }
                else
                {
                    strMatram = txtMasogcs.Text.Trim().ToString();
                    dsAll = GlobalServices.Service_NPCUS.Get_THONGTIN_KHANG_tram(strMa_dviqly, strMatram, ref strErr);
                }

                if (dsAll != null && dsAll.Tables["KQ"].Rows.Count > 0)
                { }
                else
                {
                    this.Cursor = null;
                    MessageBox.Show("Khong co du lieu" + "\n" + strErr.ToString());
                    return;
                }


                //ktra so dthoai da ton tai hay chua
                for (int i = 0; i < dsAll.Tables["KQ"].Rows.Count; i++)
                {
                    string strMakhang = "";
                    bool iTontai = false;

                    if (dsAll.Tables["KQ"].Rows[i]["DTHOAI"].ToString().Trim() != string.Empty)
                    {
                        strMakhang = dsAll.Tables["KQ"].Rows[i]["MA_KHANG"].ToString().Trim();
                        //strDTHOAI = dsAll.Tables["KQ"].Rows[i]["DTHOAI"].ToString().Trim();
                        //strDTHOAI = "84" + strDTHOAI.Substring(1, strDTHOAI.Length - 1);

                        iTontai = GlobalServices.Service_NPCUS.ktraKhangExistsSMS(strMakhang);
                    }
                    else
                    {
                        strMakhang = "";
                    }

                    if (iTontai == true)
                    {
                        dsAll.Tables["KQ"].Rows[i]["CHON"] = true;
                    }
                    else
                    {
                        dsAll.Tables["KQ"].Rows[i]["CHON"] = false;
                    }


                }

                if (dsAll != null && dsAll.Tables["KQ"].Rows.Count > 0)
                {
                    DataView dv = dsAll.Tables["KQ"].DefaultView;
                    dgrDSach_KHang.ItemsSource = dv;
                    dgrDSach_KHang.Columns[1].IsReadOnly = true;
                    dgrDSach_KHang.Columns[2].IsReadOnly = true;
                    dgrDSach_KHang.Columns[3].IsReadOnly = true;

                    dtDDO = dsAll.Tables["DIEMDO"].Copy();
                    dtKHANG = dsAll.Tables["KHANG"].Copy();
                    dtVITRI = dsAll.Tables["VITRI"].Copy();

                    btnGhi.IsEnabled = true;
                    Count();
                }
                else
                {
                    dgrDSach_KHang.ItemsSource = null;
                    btnGhi.IsEnabled = false;
                    lblResult.Content = "";
                    MessageBox.Show("Không có dữ liệu !");
                }
                this.Cursor = null;

            }
            catch (Exception ex)
            {
                this.Cursor = null;
                if (ex.ToString().Contains("timeout"))
                {
                    MessageBox.Show("Không kết nối được, kiểm tra lại đường chuyền !" + "\n" + ex.ToString());
                }
                else
                {
                    MessageBox.Show(ex.ToString());
                }
            }
        }

        private void dgrDSach_KHang_CurrentCellChanged(object sender, EventArgs e)
        {

        }

        private void chkChonTatCa_Click(object sender, RoutedEventArgs e)
        {

        }

        private void chkDaoChon_Click(object sender, RoutedEventArgs e)
        {

        }

        private void btnLayDuLieu1_Click(object sender, RoutedEventArgs e)
        {

        }

        private void txtNgayGCS_PreviewTextInput(object sender, TextCompositionEventArgs e)
        {

        }

        private void btnChon_Click(object sender, RoutedEventArgs e)
        {

        }

        private void dgrDSach_SGCS_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {

        }

        public void checkDataGrid()
        {
            try
            {
                DataTable dtChon = new DataTable();
                DataTable dt = dsAll.Tables[0] as DataTable;
                dt.TableName = "KQ";

                if (dt.Select("CHON = 'true'").Count() > 0)
                {
                    dtChon = dt.Select("CHON = 'true'").CopyToDataTable();
                }

                // kiểm tra ngày sinh
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    DataRow drAll = dt.Rows[i];
                    strMA_KHANG = drAll["MA_KHANG"].ToString();


                    DateTime dtime = new DateTime();
                    string strdtime = "";
                    if (drAll["NGAY_SINH"].ToString() != string.Empty)
                    {
                        strdtime = ChangeFormatDate(drAll["NGAY_SINH"].ToString());
                        if (!DateTime.TryParse(strdtime, out dtime))
                        {
                            MessageBox.Show("Nhập lại ngày sinh của khách hàng: " + strMA_KHANG + "\n" + " chú ý theo định dạng: dd/MM/yyyy");
                            FindGrid(drAll["MA_KHANG"].ToString());
                            checkData = false;
                            return;
                        }
                    }
                }

                // kiểm tra số điện thoại của khách hàng chọn vào SMS
                if (dtChon.Rows.Count > 0)
                {
                    string[] ArrDauso = { "090", "091", "093", "094", "096", "097", "098", "012", "016" };
                    for (int i = 0; i < dtChon.Rows.Count; i++)
                    {
                        if (dtChon.Rows[i]["DTHOAI"].ToString().Trim() != string.Empty)
                        {
                            Int64 intOut = 0;
                            string strDTHOAI = "";
                            if (Int64.TryParse(dtChon.Rows[i]["DTHOAI"].ToString().Trim(), out intOut))
                            {
                                strDTHOAI = dtChon.Rows[i]["DTHOAI"].ToString().Trim();
                                if ((strDTHOAI.Length == 10 || strDTHOAI.Length == 11) && (ArrDauso.Contains(strDTHOAI.Substring(0, 3))))
                                {
                                }
                                else
                                {
                                    MessageBox.Show("Số điện thoại có độ dài 10 hoặc 11 số " + "\n" + "Số điện thoại phải có đầu số: 090 091 093 094 096 097 098 012 016 \n");
                                    FindGrid(dtChon.Rows[i]["MA_KHANG"].ToString());
                                    checkData = false;
                                    return;
                                }
                            }
                            else
                            {
                                MessageBox.Show("Số điện thoại không đúng định dạng chuỗi số!");
                                FindGrid(dtChon.Rows[i]["MA_KHANG"].ToString());
                                checkData = false;
                                return;
                            }
                        }
                    }
                }
                checkData = true;

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }

        public void FindGrid(string strMakhang)
        {
            try
            {
                DataRow[] dr = dsAll.Tables[0].Select("MA_KHANG LIKE '%" + strMakhang.ToUpper() + "%'");
                if (dr.Count() == 0)
                {
                    dgrDSach_KHang.SelectedIndex = 0;
                    return;
                }
                else
                {
                    for (int i = 0; i < dgrDSach_KHang.Items.Count; i++)
                    {
                        DataGridRow row = (DataGridRow)dgrDSach_KHang.ItemContainerGenerator.ContainerFromIndex(i);
                        TextBlock cellMA_KHANG = dgrDSach_KHang.Columns[1].GetCellContent(row) as TextBlock;
                        //TextBlock cellTEN_KHANG = dgrHDON_CNO.Columns[4].GetCellContent(row) as TextBlock;
                        //TextBlock cellSTT = dgrHDON_CNO.Columns[5].GetCellContent(row) as TextBlock;
                        //TextBlock cellID_HDON = dgrHDON_CNO.Columns[8].GetCellContent(row) as TextBlock;
                        if (cellMA_KHANG != null && (cellMA_KHANG.Text.ToUpper().Contains(strMakhang.ToUpper())))
                        {
                            object item = dgrDSach_KHang.Items[i];
                            dgrDSach_KHang.SelectedItem = item;
                            dgrDSach_KHang.ScrollIntoView(item);
                            row.MoveFocus(new TraversalRequest(FocusNavigationDirection.Next));
                            //row.Background = Brushes.Yellow;
                            //timkiem = i;
                            break;
                        }
                    }

                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }

        private void btnGhi_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (dsAll != null)
                {
                    this.Cursor = Cursors.Wait;

                    checkDataGrid();
                    if (checkData == false)
                    {
                        this.Cursor = null;
                        return;
                    }

                    DataTable dt1 = dsAll.Tables[0] as DataTable;

                    //if (dt1.Select("CHON = 'true'").Count() < 1)
                    //{
                    //    MessageBox.Show("Hãy chọn khách hàng cần thay đổi thông tin !");
                    //    this.Cursor = null;
                    //    return;
                    //}
                    DataTable dtChon = new DataTable();
                    DataTable dtKoChon = new DataTable();

                    if (dt1.Select("CHON = 'true'").Count() > 0)
                    {
                        dtChon = dt1.Select("CHON = 'true'").CopyToDataTable();
                    }

                    if (dt1.Select("CHON = 'false'").Count() > 0)
                    {
                        dtKoChon = dt1.Select("CHON = 'false'").CopyToDataTable();
                    }

                    DataTable dt = new DataTable();
                    dt = dtChon.Copy();
                    dt.TableName = "KQ";


                    // UPDATE HDG_KHACH_HANG
                    if (dt != null && dt.Rows.Count > 0)
                    {
                        for (int i = 0; i < dt.Rows.Count; i++)
                        {
                            DataRow drAll = dt.Rows[i];
                            strMA_KHANG = drAll["MA_KHANG"].ToString();


                            DateTime dtime = new DateTime();
                            string strdtime = "";
                            if (drAll["NGAY_SINH"].ToString() != string.Empty)
                            {
                                strdtime = ChangeFormatDate(drAll["NGAY_SINH"].ToString());
                            }

                            DataRow drKH = dtKHANG.Select("MA_KHANG = '" + strMA_KHANG + "'")[0];
                            //DataRow drDDO = dtDDO.Select("MA_DDO = '" + strMA_DDO + "'")[0];
                            //DataRow drVITRI = dtVITRI.Select("MA_DDO = '" + strMA_DDO + "'")[0];

                            #region update bảng HDG_KHACH_HANG
                            DsTableInsert.Tables["HDG_KHACH_HANG"].Rows.Clear();
                            DataRow drHDG_KHACH_HANG = DsTableInsert.Tables["HDG_KHACH_HANG"].NewRow();
                            drHDG_KHACH_HANG["MA_DVIQLY"] = strMa_dviqly;
                            drHDG_KHACH_HANG["MA_KHANG"] = drKH["MA_KHANG"];
                            drHDG_KHACH_HANG["SO_NHA"] = drKH["SO_NHA"];
                            drHDG_KHACH_HANG["DUONG_PHO"] = drKH["DUONG_PHO"];
                            drHDG_KHACH_HANG["DCHI_HDON"] = drKH["DCHI_HDON"];
                            drHDG_KHACH_HANG["ID_HDONG"] = drKH["ID_HDONG"];
                            drHDG_KHACH_HANG["MASO_THUE"] = drKH["MASO_THUE"];
                            drHDG_KHACH_HANG["TLE_THUE"] = drKH["TLE_THUE"];
                            drHDG_KHACH_HANG["LOAI_KHANG"] = drKH["LOAI_KHANG"];
                            drHDG_KHACH_HANG["MANHOM_KHANG"] = drKH["MANHOM_KHANG"];
                            drHDG_KHACH_HANG["MA_NN"] = drKH["MA_NN"];
                            drHDG_KHACH_HANG["TEN_KHANG"] = drKH["TEN_KHANG"];
                            drHDG_KHACH_HANG["TENHDON_KHANG"] = drKH["TENHDON_KHANG"];
                            drHDG_KHACH_HANG["TENTAT_KHANG"] = drKH["TENTAT_KHANG"];
                            if (strdtime != string.Empty)
                            {
                                drHDG_KHACH_HANG["NGAY_SINH"] = Convert.ToDateTime(strdtime);
                            }
                            else
                            {
                                drHDG_KHACH_HANG["NGAY_SINH"] = null;
                            }
                            drHDG_KHACH_HANG["NGAY_HLUC"] = drKH["NGAY_HLUC"];
                            drHDG_KHACH_HANG["TRANG_THAI"] = drKH["TRANG_THAI"];
                            drHDG_KHACH_HANG["THANG"] = drKH["THANG"];
                            drHDG_KHACH_HANG["NAM"] = drKH["THANG"];
                            drHDG_KHACH_HANG["MA_DVIDCHINH"] = drKH["MA_DVIDCHINH"];
                            drHDG_KHACH_HANG["TKHOAN_KHANG"] = drKH["TKHOAN_KHANG"];
                            drHDG_KHACH_HANG["MA_NHANG"] = drKH["MA_NHANG"];
                            drHDG_KHACH_HANG["MA_KHTT"] = drKH["MA_KHTT"];
                            drHDG_KHACH_HANG["MA_LOAIDN"] = drKH["MA_LOAIDN"];
                            drHDG_KHACH_HANG["DTHOAI"] = drAll["DTHOAI"];
                            drHDG_KHACH_HANG["FAX"] = drKH["FAX"];
                            drHDG_KHACH_HANG["EMAIL"] = drAll["EMAIL"];
                            drHDG_KHACH_HANG["WEBSITE"] = drKH["WEBSITE"];
                            drHDG_KHACH_HANG["GIOI_TINH"] = drKH["GIOI_TINH"];
                            drHDG_KHACH_HANG["MA_CNANG"] = "-1";
                            drHDG_KHACH_HANG["NGAY_TAO"] = drKH["NGAY_TAO"];
                            drHDG_KHACH_HANG["NGUOI_TAO"] = drKH["NGUOI_TAO"];
                            drHDG_KHACH_HANG["NGAY_SUA"] = DateTime.Now;
                            drHDG_KHACH_HANG["NGUOI_SUA"] = strTenDNHap + "_SMS";
                            DsTableInsert.Tables["HDG_KHACH_HANG"].Rows.Add(drHDG_KHACH_HANG);
                            DsTableInsert.AcceptChanges();
                            if (!GlobalServices.Service_NPCUS.update_HDG_KHACH_HANG_TDTT(DsTableInsert, ref strErr))
                            {
                                this.Cursor = null;
                                MessageBox.Show("Update HDG_KHACH_HANG Failed: " + drKH["MA_KHANG"].ToString() + "\n" + strErr);
                                //del_data_Inserted();
                                return;
                            }
                            // lưu lại thông tin để xóa trong trường hợp Insert không được
                            DataRow drHDG_KHACH_HANG_del = DsTableDelete.Tables["HDG_KHACH_HANG"].NewRow();
                            drHDG_KHACH_HANG_del["MA_DVIQLY"] = strMa_dviqly;
                            drHDG_KHACH_HANG_del["MA_KHANG"] = drKH["MA_KHANG"];
                            drHDG_KHACH_HANG_del["NGAY_HLUC"] = drKH["NGAY_HLUC"];
                            drHDG_KHACH_HANG_del["TRANG_THAI"] = 1;
                            DsTableDelete.Tables["HDG_KHACH_HANG"].Rows.Add(drHDG_KHACH_HANG_del);
                            DsTableDelete.AcceptChanges();


                            #endregion

                            strErr = "";

                        }
                    }

                    #region // SMS
                    // Xóa những dòng không chọn 
                    /*
                    if (dtKoChon.Rows.Count > 0)                    
                    {
                        bool chekDel = false;
                        for (int i = 0; i < dtKoChon.Rows.Count; i++)
                        {
                            chekDel = GlobalServices.Service_NPCUS.delete_NPC_SUBS_SMS_sql(strMa_dviqly, dtKoChon.Rows[i]["MA_KHANG"].ToString(), ref strErr);

                            if (chekDel == false)
                            {
                                this.Cursor = null;
                                MessageBox.Show("Không hủy được đăng ký SMS của khách hàng: " + dtKoChon.Rows[i]["MA_KHANG"].ToString());
                                return;
                            }

                        }
                    }
                    */

                    //Thêm mới - cập nhật những dòng chọn
                    if (dtChon.Rows.Count > 0)
                    {
                        string[] ArrDauso = { "090", "091", "093", "094", "096", "097", "098", "012", "016" };
                        for (int i = 0; i < dtChon.Rows.Count; i++)
                        {
                            if (dtChon.Rows[i]["DTHOAI"].ToString().Trim() != string.Empty)
                            {
                                Int64 intOut = 0;
                                string strDTHOAI = "";
                                bool iTontai = false;
                                bool chekInUp = false;
                                if (Int64.TryParse(dtChon.Rows[i]["DTHOAI"].ToString().Trim(), out intOut))
                                {
                                    strDTHOAI = dtChon.Rows[i]["DTHOAI"].ToString().Trim();
                                    if ((strDTHOAI.Length == 10 || strDTHOAI.Length == 11) && (ArrDauso.Contains(strDTHOAI.Substring(0, 3))))
                                    {
                                        strDTHOAI = "84" + strDTHOAI.Substring(1, strDTHOAI.Length - 1);
                                        iTontai = GlobalServices.Service_NPCUS.ktraKhangExistsSMS(dtChon.Rows[i]["MA_KHANG"].ToString());
                                        if (iTontai == true)
                                        {
                                            // đã có trong SMS -> update sodthoai
                                            chekInUp = GlobalServices.Service_NPCUS.update_NPC_SUBS_SMS_sql(dtChon.Rows[i]["MA_KHANG"].ToString(), strDTHOAI, ref strErr);
                                            if (chekInUp == false)
                                            {
                                                this.Cursor = null;
                                                MessageBox.Show("Không update được số điện thoại trong hệ thống SMS của khách hàng: " + dtChon.Rows[i]["MA_KHANG"].ToString() + "\n" + strErr.ToString());
                                                return;
                                            }
                                        }
                                        else
                                        {
                                            // chưa có trong SMS -> insert mới
                                            chekInUp = GlobalServices.Service_NPCUS.Insert_NPC_SUBS_SMS_sql(strMa_dviqly, dtChon.Rows[i]["MA_KHANG"].ToString(), strDTHOAI, ref strErr);
                                            if (chekInUp == false)
                                            {
                                                this.Cursor = null;
                                                MessageBox.Show("Không thêm mới được khách hàng vào hệ thống SMS: " + dtChon.Rows[i]["MA_KHANG"].ToString() + "\n" + strErr.ToString());
                                                return;
                                            }
                                        }
                                    }
                                    else
                                    {
                                        this.Cursor = null;
                                        MessageBox.Show("Nhập lại số điện thoại của khách hàng: " + dtChon.Rows[i]["MA_KHANG"].ToString() + "\n" + "Số điện thoại phải có đầu số: 090 091 093 094 096 097 098 012 016 \n" + " và độ dài số là 10 hoặc 11");
                                        return;
                                    }
                                }
                                else
                                {
                                    this.Cursor = null;
                                    MessageBox.Show("Nhập lại số điện thoại của khách hàng: " + dtChon.Rows[i]["MA_KHANG"].ToString() + "\n" + "Số " + dtChon.Rows[i]["DTHOAI"].ToString().Trim() + " không phải là chuỗi số !");
                                    return;
                                }
                            }
                        }

                    }

                    #endregion

                    this.Cursor = null;
                    MessageBox.Show("Cập nhật thông tin thành công !");

                }

            }
            catch (Exception ex)
            {
                this.Cursor = null;
                MessageBox.Show(ex.ToString());
            }
        }

        private void ckbDiachiKH_Checked(object sender, RoutedEventArgs e)
        {
            try
            {
                //txtDiachiKH.IsEnabled = true;
                checkchungDiachi = true;
                dgrDSach_KHang.Columns[3].IsReadOnly = true;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }

        private void ckbDiachiKH_Unchecked(object sender, RoutedEventArgs e)
        {
            try
            {
                //txtDiachiKH.IsEnabled = false;
                //txtDiachiKH.Text = "";
                checkchungDiachi = false;
                dgrDSach_KHang.Columns[3].IsReadOnly = false;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }

        private void chkChonTatCa_Checked(object sender, RoutedEventArgs e)
        {
            try
            {
                DataView dv = dgrDSach_KHang.ItemsSource as DataView;
                DataRow[] drselect = dv.Table.Select("CHON=0");
                foreach (DataRow dr in drselect)
                {
                    dr["CHON"] = 1;
                }
                dgrDSach_KHang.ItemsSource = dv.Table.DefaultView;
                dv.Table.DefaultView.AllowNew = false;

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            Count();
        }

        private void chkDaoChon_Checked(object sender, RoutedEventArgs e)
        {
            try
            {
                DataView dv = dgrDSach_KHang.ItemsSource as DataView;
                DataRow[] drselect = dv.Table.Select("CHON is not null");
                foreach (DataRow dr in drselect)
                {
                    if (dr["CHON"].ToString() == "True")
                    {
                        dr["CHON"] = 0;
                    }

                    else
                    {
                        dr["CHON"] = 1;
                    }
                }

                dgrDSach_KHang.ItemsSource = dv.Table.DefaultView;
                dv.Table.DefaultView.AllowNew = false;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            Count();
        }

        private void chkDaoChon_Unchecked(object sender, RoutedEventArgs e)
        {
            try
            {
                DataView dv = dgrDSach_KHang.ItemsSource as DataView;
                DataRow[] drselect = dv.Table.Select("CHON is not null");
                foreach (DataRow dr in drselect)
                {
                    string t = dr["CHON"].ToString();
                    if (dr["CHON"].ToString() == "True")
                    {
                        dr["CHON"] = 0;
                    }
                    else
                    {
                        dr["CHON"] = 1;
                    }
                }

                dgrDSach_KHang.ItemsSource = dv.Table.DefaultView;
                dv.Table.DefaultView.AllowNew = false;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            Count();
        }

        private void txtMa_khang_KeyDown(object sender, KeyEventArgs e)
        {
            try
            {
                if (e.Key == Key.Enter)
                {
                    if (txtMa_khang.Text.Trim().ToString() != string.Empty)
                    {
                        FindGrid(txtMa_khang.Text.Trim().ToString());
                    }
                    txtMa_khang.Focus();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }


    }
}

